home *** CD-ROM | disk | FTP | other *** search
/ Aminet 31 / Aminet 31 (1999)(Schatztruhe)[!][Jun 1999].iso / Aminet / dev / obero / OberonAModules.lha / WBStart.mod < prev    next >
Text File  |  1999-02-26  |  2KB  |  65 lines

  1. <*STANDARD-*>
  2. MODULE WBStart;
  3. (*
  4.  * libraries/wbstart.h  V2.2
  5.  *
  6.  * shared library include file
  7.  *
  8.  * (c) 1991-1996 Stefan Becker
  9.  *
  10.  * OberonA Version By Morten Bjergstrøm
  11.  * EMail: mbjergstroem@hotmail.com
  12.  *)
  13.  
  14. IMPORT
  15.   e:=Exec, u:=Utility, Kernel;
  16.  
  17. CONST
  18.   NAME    * = "wbstart.library";
  19.   VERSION * = 2;
  20.  
  21. (* Tags for WBStartTagList() *)
  22.  
  23. (* Name of the program to start. It is relative to      *)
  24. (* directoryName or wbsDirLock.                         *)
  25.   name            * = u.user + 1; (* const char *       *)
  26.  
  27. (* Name of a directory. Mutually exclusive to directoryLock  *)
  28.   directoryName   * = u.user + 2; (* const char *       *)
  29.  
  30. (* Lock of a directory. Mutually exclusive to directoryName  *)
  31.   directoryLock   * = u.user + 3; (* BPTR               *)
  32.  
  33. (* Stack size for the new process                       *)
  34.   stack           * = u.user + 4; (* ULONG              *)
  35.  
  36. (* Priority for the new process                         *)
  37.   priority        * = u.user + 5; (* LONG               *)
  38.  
  39. (* Number of arguments in argumentList                  *)
  40.   argumentCount   * = u.user + 6; (* ULONG              *)
  41.  
  42. (* Array of arguments. argumentCount MUST be specified also! *)
  43.   argumentList    * = u.user + 7; (* struct WBArg *     *)
  44.  
  45. VAR
  46.   base -: e.LibraryPtr;
  47.  
  48. PROCEDURE WBStartTagList * [base,-30] (tags[8]  : u.TagListPtr): LONGINT;
  49.  
  50. PROCEDURE WBStartTags    * [base,-30] (tag1[8]..: u.Tag       ): LONGINT;
  51.  
  52.  
  53.  
  54. PROCEDURE* [0] CloseLib (VAR rc : LONGINT);
  55.  
  56. BEGIN (* CloseLib *)
  57.   IF base # NIL THEN e.CloseLibrary (base) END
  58. END CloseLib;
  59.  
  60. BEGIN
  61.   base := e.OpenLibrary (NAME, VERSION);
  62.   
  63.   IF base # NIL THEN Kernel.SetCleanup (CloseLib) END;
  64. END WBStart.
  65.